The Source Code Control System (SCCS) makes it possible for a user to keep track of each revision of a document or source code file, avoiding the confusion that often arises from having several versions of one file on line. It is particularly useful when enhancements are made to a program, but the original may still be useful to keep around. Each time a file is "entered" into SCCS, SCCS makes note of which lines have been changed or deleted since the most previous version, and from that information can regenerate the file on demand. Each set of changes is dependent on all previous sets of changes.